﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using Sebrae.Academico.InfraEstrutura.Seguranca.Autenticacao;
using Sebrae.Academico.Trilhas.BP.Services;


namespace Sebrae.Academico.Trihas.Services
{
    /// <summary>
    /// Summary description for MatriculaTrilha
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class MatriculaTrilha : System.Web.Services.WebService
    {

        public AuthenticationRequest autenticacao;
        private MatriculaTrilhaServices matriculaTrilhaServices = new MatriculaTrilhaServices();


        [WebMethod]
        [SoapHeader("autenticacao")]
        public RetornoWebService RegistrarMatricula(int pID_Usuario, int pID_Trilha, int pID_TrilhaNivel)
        {
            if (!matriculaTrilhaServices.AutenticaUsuario(autenticacao))
            {
                return new RetornoWebService()
                {

                    Resultado = 1,
                    Mensagem = "Usuário não autenticado pelo sistema."

                };
            }

            try
            {
                matriculaTrilhaServices.RegistrarMatriculatrilha(pID_Usuario, pID_Trilha, pID_TrilhaNivel, autenticacao.Login);
                return new RetornoWebService() { Resultado = 0, Mensagem = "" };
            }
            catch (Exception ex)
            {
                return new RetornoWebService() { Resultado = 1, Mensagem = ex.Message };
            }
             
        }
    }
}
